<?php

// mbilling/BillingBundle/Entity/ordersShared.php
namespace mbilling\BillingBundle\Entity;
use mbilling\BillingBundle\Validation\domain;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use mbilling\BillingBundle\Validator\Constraints as mpanel;

/*
 * status:
 * 0 - без домена
 * 1 - домен не у нас
 * 2 - домен переносится
 * 3 - домен у нас
 * 4 - служебный домен
 */
/**
 * @ORM\Entity
 */
class ordersShared
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;

    /**
     * @ORM\Column(type="string", length=30, nullable="TRUE")
     */
    protected $unix_login;

    /**
     * @ORM\Column(type="string", length=30, nullable="TRUE")
     */
    protected $unix_worker;
    
    /**
     * @ORM\Column(type="float")
     * @assert\Type("numeric")
     */
    protected $hdd;
    
    /**
     * @ORM\Column(type="boolean")
     */
    protected $cron_access;
    
    /**
     * @ORM\Column(type="boolean")
     */
    protected $ftp_access;
    
    /**
     * @ORM\Column(type="boolean")
     */
    protected $dns_access;
    
    /**
     * @ORM\Column(type="boolean")
     */
    protected $email_access;
    
    /**
     * @ORM\Column(type="boolean")
     */
    protected $mysql_access;
    
    /**
     * @ORM\Column(type="boolean")
     */
    protected $backup_access;

    /**
     * @ORM\Column(type="boolean")
     */
    protected $ssh_access;

    /**
     * @ORM\Column(type="boolean")
     */
    protected $ssl_access;

    /**
     * @ORM\Column(type="boolean")
     */
    protected $cgi_bin_access;

    /**
     * @ORM\Column(type="boolean")
     */
    protected $perl_php_access;

    /**
     * @ORM\Column(type="boolean")
     */
    protected $anonymous_ftp_access;

    /**
     * @ORM\Column(type="integer")
     * @assert\Type("numeric")
     */
    protected $ftp_count;

    /**
     * @ORM\Column(type="integer")
     * @assert\Type("numeric")
     */
    protected $mysql_count;

    /**
     * @ORM\Column(type="integer")
     * @assert\Type("numeric")
     */
    protected $site_count;

    /**
     * @ORM\Column(type="float")
     * @assert\Type("numeric")
     */
    protected $trafic_count;

    /**
     * @ORM\Column(type="integer")
     * @assert\Type("numeric")
     */
    protected $email_count;

    /**
     * @ORM\Column(type="integer")
     * @assert\Type("numeric")
     */
    protected $domain_count;
    
    /**
     * @ORM\Column(type="boolean")
     */
    protected $is_changed;
	
    /**
     * @ORM\Column(type="integer")
     */
    protected $order_id;
	
    /**
     * @ORM\Column(type="integer")
     * @assert\NotBlank
     */
    protected $shared_tarif;

    /**
     * @ORM\Column(type="string", length=100, nullable="TRUE")
     
     */
    protected $domain;
    
    /**
     * @ORM\Column(type="string", length=200, nullable="TRUE")
     */
    protected $comment;

    /**
     * @ORM\Column(type="integer")
     */
    protected $status;

    /**
     * @ORM\Column(type="string", length=45, nullable="TRUE")
     */
    protected $promocode;

    /**
     * @assert\True
     */
    protected $terms;
    
    public function setId($id)
    {
        $this->id = $id;
    }
    public function getId()
    {
        return $this->id;
    }

    public function setUnixLogin($unix_login)
    {
        $this->unix_login = $unix_login;
    }
    public function getUnixLogin()
    {
        return $this->unix_login;
    }

    public function setUnixWorker($unix_worker)
    {
        $this->unix_worker = $unix_worker;
    }
    public function getUnixWorker()
    {
        return $this->unix_worker;
    }
    
    public function setHdd($hdd)
    {
        $this->hdd = $hdd;
    }
    public function getHdd()
    {
        return $this->hdd;
    }

    public function setCronAccess($cron_access)
    {
        $this->cron_access = $cron_access;
    }
    public function getCronAccess()
    {
        return $this->cron_access;
    }

    public function setFtpAccess($ftp_access)
    {
        $this->ftp_access = $ftp_access;
    }
    public function getFtpAccess()
    {
        return $this->ftp_access;
    }

    public function setDnsAccess($dns_access)
    {
        $this->dns_access = $dns_access;
    }
    public function getDnsAccess()
    {
        return $this->dns_access;
    }

    public function setEmailAccess($email_access)
    {
        $this->email_access = $email_access;
    }
    public function getEmailAccess()
    {
        return $this->email_access;
    }

    public function setMysqlAccess($mysql_access)
    {
        $this->mysql_access = $mysql_access;
    }
    public function getMysqlAccess()
    {
        return $this->mysql_access;
    }

    public function setBackupAccess($backup_access)
    {
        $this->backup_access = $backup_access;
    }
    public function getBackupAccess()
    {
        return $this->backup_access;
    }

    public function setSshAccess($ssh_access)
    {
        $this->ssh_access = $ssh_access;
    }
    public function getSshAccess()
    {
        return $this->ssh_access;
    }

    public function setSslAccess($ssl_access)
    {
        $this->ssl_access = $ssl_access;
    }
    public function getSslAccess()
    {
        return $this->ssl_access;
    }

    public function setCgiBinAccess($cgi_bin_access)
    {
        $this->cgi_bin_access = $cgi_bin_access;
    }
    public function getCgiBinAccess()
    {
        return $this->cgi_bin_access;
    }

    public function setPerlPhpAccess($perl_php_access)
    {
        $this->perl_php_access = $perl_php_access;
    }
    public function getPerlPhpAccess()
    {
        return $this->perl_php_access;
    }

    public function setAnonymousFtpAccess($anonymous_ftp_access)
    {
        $this->anonymous_ftp_access = $anonymous_ftp_access;
    }
    public function getAnonymousFtpAccess()
    {
        return $this->anonymous_ftp_access;
    }

    public function setFtpCount($ftp_count)
    {
        $this->ftp_count = $ftp_count;
    }
    public function getFtpCount()
    {
        return $this->ftp_count;
    }

    public function setMysqlCount($mysql_count)
    {
        $this->mysql_count = $mysql_count;
    }
    public function getMysqlCount()
    {
        return $this->mysql_count;
    }

    public function setSiteCount($site_count)
    {
        $this->site_count = $site_count;
    }
    public function getSiteCount()
    {
        return $this->site_count;
    }

    public function setTraficCount($trafic_count)
    {
        $this->trafic_count = $trafic_count;
    }
    public function getTraficCount()
    {
        return $this->trafic_count;
    }

    public function setEmailCount($email_count)
    {
        $this->email_count = $email_count;
    }
    public function getEmailCount()
    {
        return $this->email_count;
    }

    public function setDomainCount($domain_count)
    {
        $this->domain_count = $domain_count;
    }
    public function getDomainCount()
    {
        return $this->domain_count;
    }

    public function setIsChanged($is_changed)
    {
        $this->is_changed = $is_changed;
    }
    public function getIsChanged()
    {
        return $this->is_changed;
    }

    public function setOrderId($order_id)
    {
        $this->order_id = $order_id;
    }
    public function getOrderId()
    {
        return $this->order_id;
    }

    public function setSharedTarif($shared_tarif)
    {
        $this->shared_tarif = $shared_tarif;
    }
    public function getSharedTarif()
    {
        return $this->shared_tarif;
    }

    public function setDomain($domain)
    {
        $this->domain = $domain;
    }
    public function getDomain()
    {
        return $this->domain;
    }

    public function setComment($comment)
    {
        $this->comment = $comment;
    }
    public function getComment()
    {
        return $this->comment;
    }

    public function setStatus($status)
    {
        $this->status = $status;
    }
    public function getStatus()
    {
        return $this->status;
    }

    public function setTerms($terms)
    {
        $this->terms = $terms;
    }
    public function getTerms()
    {
        return $this->terms;
    }

    public function setPromocode($promocode)
    {
        $this->promocode = $promocode;
    }
    public function getPromocode()
    {
        return $this->promocode;
    }
    
    public function initDefaultEntity()
    {
        $this->setHdd('100');
        $this->setCronAccess('1');
        $this->setFtpAccess('0');
        $this->setDnsAccess('1');
        $this->setEmailAccess('1');
        $this->setMysqlAccess('1');
        $this->setBackupAccess('0');
        $this->setIsChanged('0');
        $this->setOrderId('1');
        $this->setSharedTarif('2');
        $this->setDomain('example.com');
        $this->setComment('mycomment');
        $this->setStatus('1');
        $this->setPromocode('');
        return $this;
    }
}
?>
